Ext.onReady(function(){

    var h_crear_success = function(){
        X.set('facultad', '');
        X.set('nombre',   '');
        X.set('sigla',    '');
        X.set('permiso',  '');
        X.focus('facultad');
    }
    var h_crear_failure = function(){
        X.focus('facultad');
    }

    var h_empty_facultad = function(){ X.focus('facultad'); }
    var h_empty_nombre   = function(){ X.focus('nombre');   }
    var h_empty_sigla    = function(){ X.focus('sigla');    }

    X.store({
        id     : 'storeFacultad',
        fields : [
            'idFacultad',
            'nombre'
        ]
    });

    X.form.panel({
        id     : 'createDepartmentForm',
        height : 145,
        width  : 325,
        items  : [
            X.form.label  ({x:10,  y:16,  text:'Facultad:'          }),
            X.form.label  ({x:10,  y:46,  text:'Nombre:'            }),
            X.form.label  ({x:10,  y:76,  text:'Sigla:'             }),
            X.form.label  ({x:190, y:76,  text:'Permitir carreras:' }),
            X.form.combo  ({x:70,  y:10,  width:230, id:'facultad',
                                                     dfield:'nombre',
                                                     vfield:'idFacultad',
                                                     storeId:'storeFacultad' }),
            X.form.text   ({x:70,  y:40,  width:230, id:'nombre', maxlen: 40 }),
            X.form.text   ({x:70,  y:70,  width:105, id:'sigla',  maxlen: 10 }),
            X.form.check  ({x:287, y:70,  id:'permiso' }),
            X.form.button ({x:220, y:100, width:80,  id:'crear', text:'Crear' }),
        ]
    });

    X.event.button('crear', function(btn, event){
        if (X.isempty('facultad'))
            X.msg.failure('Complete el campo "Facultad".', h_empty_facultad);
        else if (X.isempty('nombre'))
            X.msg.failure('Complete el campo "Nombre".', h_empty_nombre    );
        else if (X.isempty('sigla'))
            X.msg.failure('Complete el campo "Sigla".', h_empty_codigo     );
        else
            X.ajax({
                url: '/departamento/ajax-crear',
                params: {
                    facultad : X.value('facultad'),
                    nombre   : X.value('nombre'),
                    sigla    : X.value('sigla'),
                    permiso  : X.value('permiso')
                },
                afterSuccess: h_crear_success,
                afterFailure: h_crear_failure
            });
    });

    X.win.panel({
        id      : 'creaWindow',
        title   : 'Crear departamento',
        modal   : false,
        items   : X.get('createDepartmentForm')
    });

    X.get('creaWindow').show();

});

